========================================================================== SSL-CLI V1.4x Letzte Žnderung: 18.08.1991 ========================================================================== (c) Stephan Slabihoud, Gustav-Ohm-Str.72, 4250 Bottrop E-Mail: 2:245/8.13 ========================================================================== VOLLVERSION ========================================================================== S H A R E W A R E ========================================================================== Dieses Programm ist Shareware. Wer es benutzt, der sollte 20.--DM an den Programmautor senden. Als Dank sende ich dem "Spender" die neueste Version des CLI umgehend zu. ========================================================================== ANLEITUNG: ========== SSL-CLI l„uft als PRG, TOS und TTP. Wird der CLI als TTP vom Desktop gestartet, so kann in der Kommandozeile eine Batchdatei angegeben werden, die sofort gestartet wird. Wichtig: Wird SSL-CLI als TOS- oder TTP-Programm gestartet, so k”nnen keine GEM-Programme, aus dem CLI heraus, aufgerufen werden. Ist eine Batchdatei unter dem Namen AUTOEXEC.BAT vorhanden, so wird diese automatisch gestartet. ALLGEMEINES: ============ - Grož/Kleinschreibung wird nicht beachtet. - Sprungmarken k”nnen aus beliebigen Zeichen bestehen. - Wird einem Befehl ein "@" vorangestellt, so wird nur fr diesen Befehl die ECHO-Ausgabe unterdrckt. - Abbruch einer Batchdatei ber Ctrl+C. - Anhalten/Fortsetzen der Bildschirmausgabe ber Ctrl+S/Ctrl+Q - HELP-Seite ber F2 - Wiederholung des letzten Befehls durch F3 - Die Variablen %L/%E beinhalteten die letzten Stackelemente (siehe STACK) - Die Variable %A beinhaltet alle Stackelemente (siehe STACK) - Batchdateien k”nnen bis zu 50 Parameter bergeben werden. Die Platz- halter %1 bis %9 stehen fr die ersten neun Parameter. - Wird ein Befehl eigegeben, so wird zun„chst angenommen, es handle sich um einen internen Befehl. Gibt es keinen solchen internen Befehl, so wird versucht ein Programm mit diesem Namen zu starten. Ist dieses Programm nicht vorhanden, so wird zus„tzlich noch versucht, ein Programm mit diesem Namen zu starten, welches aber die Fileendung *.TTP,*.TOS,*.PRG und *.APP tr„gt. Erst wenn dieses fehlschl„gt, wird eine entsprechende Fehlermeldung ausgegeben. *) Diese Befehle geben einen Fehlercode als ERRORLEVEL zurck (0=kein Fehler aufgetreten). +) Diese Befehle liefern einen Rckgabewert ber ERRORLEVEL zurck. Dieser kann z.B. ber ERR? angezeigt werden. DISK-BEFEHLE: ============= * CHDIR/CD path\name Pfad „ndern. CHDIR \FIDO * MKDIR/MD path\name Ordner anlegen. MKDIR \FIDO\ORDNER.FOL * RMDIR/RM path\name Ordner l”schen. RMDIR \FIDO\ORDNER.FOL DIR [path][file] Inhaltsverzeichnis anzeigen. DIR DIR C:\SYSTEM FILES [path][file] Erweitertes Inhaltsverzeichnis anzeigen. FILES FILES C:\SYSTEM\*.TXT TREE [path][file] Anzeige des Inhaltsverzeichnisses einschliežlich der Unterverzeichnisse. TREE TREE C:\TEXTE TREE C:\TEXTE\*.BAK * CHDRIVE x:/x: Laufwerk „ndern. CHDRIVE C: C: + DFREE [x:] Ermittelt den noch freien Speicherplatz der Diskette/Partition x:. Der freie Speicherplatz kann ber ERRORLEVEL abgefragt werden. DFREE C: * TOUCH path\file Setzt Datum/Uhrzeit der Datei gleich dem Systemdatum/zeit. TOUCH C:\DESKTOP.INF * DEL path\file L”scht eine Datei. DEL C:\TEST.TXT * COPY path[\file] [path] Kopiert eine/mehrere Dateien. COPY *.TXT TEXTE\ Kopiert alle TXT-Dateien in den Ordner TEXTE. COPY *.TXT Kopiert alle TXT-Dateien in den aktuellen Ordner. Beispiele zur Pfadangabe: ("E:\FIDO" sei der aktuelle Pfad) \*.TXT -> E:\*.TXT *.TXT -> E:\FIDO\*.TXT \TEXTE\*.TXT -> E:\TEXTE\*.TXT TEXTE\*.TXT -> E:\FIDO\TEXTE\*.TXT \ -> E:\*.* E:\ -> E:\*.* * MOVE path[\file] [path] Verschiebt eine/mehrere Dateien. Beispiele: siehe COPY! DRIVES? Zeigt alle vorhandenen Laufwerke an. STAT [x:] Gibt eine Laufwerksstatistik aus. STAT C: DUMP path\file Ausgabe einer Datei als HEX-Dump. MAPPING [x:] Ausgabe einer graphischen Belegungstabelle der Partition x:. CHKDSK [x:] Untersucht die Partition x: nach freien und defekten Clustern. ERRORLEVEL-BEFEHLE: =================== IFERR= x lable Wenn die letzte Fehlernummer GLEICH x ist, dann Sprung nach "lable". IFERR> x lable Wenn die letzte Fehlernummer GR™žER x ist, dann Sprung nach "lable". IFERR< x lable dito., wenn KLEINER. IFERR# x lable dito., wenn UNGLEICH. IFERR>= x lable dito., wenn GR™žER oder GLEICH. IFERR<= x lable dito., wenn KLEINER oder GLEICH. ERR? Abfrage des letzten Fehlercodes (ERRORLEVEL). + EXIST? path\file Abfrage, ob eine Datei vorhanden ist. EXIST? C:\TEXTE\TEST.TXT 0 - Datei ist vorhanden. 1 - Datei nicht gefunden. + CLRERR Setzt ERRORLEVEL auf NULL. + SETERR x Setzt ERRORLEVEL auf den Wert x. STORE Sichert ERRORLEVEL im Zwischenspeicher. RECALL Holt ERRORLEVEL zurck. SYSTEM-BEFEHLE: =============== END Ende einer Batchdatei. VER Versionsnummer anzeigen. PAUSE Wartet auf Tastendruck. GOTO lable Sprung zur Marke "lable". GOTO START :lable Definiert Sprungmarke "lable". :START HELP Anzeige einer Hilfsseite. EXIT SSL-CLI beenden. BREAK=ON Unterbrechung einer Batchdatei mit Ctrl+C ein- schalten. BREAK=OFF Unterbrechung einer Batchdatei mit Ctrl+C aus- schalten. BREAK? Abfrage des BREAK-Status. REM Bemerkungszeile REM Dies ist nur eine Bemerkung. + GEMDOS? Zeigt GEMDOS-Version. In ERRORLEVEL wird die GEMDOS-Versionsnummer als Dezimalwert zurck- geliefert. GEMDOS? -> z.B. $1600 (5632 Dezimal) DATE Anzeigen/Setzen des Datums. TIME Anzeigen/Setzen der Uhrzeit. SET? Anzeige des aktuellen Environment. SET var=path; Erweitern des Environments um var=path. SET ; L”schen des Environments. SET BINKLEY=E:\FIDO; I/O-BEFEHLE: ============ ECHO=ON Echo ein. ECHO=OFF Echo aus. ECHO? Abfrage des ECHO-Status. ECHO text Ausgabe von "text" auf dem Bildschirm. ECHO Ausgabe einer Leerzeile. PECHO text Ausgabe von "text" auf dem Drucker. PECHO Druckt eine Leerzeile. CLS Bildschirm l”schen. WRAP=ON Zeilenberlauf ein. WRAP=OFF Zeilenberlauf aus. WRAP? Abfrage des WRAP-Status. HARDOPY Druckt eine Hardcopy. * TYPE path\file Ausgabe einer Datei auf dem Bildschirm. * PRINT path\file Ausgabe einer Datei auf dem Drucker. + GETKEY Abfrage der Tastatur. In ERRORLEVEL wird der ASCII-Code geliefert. WRITE text Ausgabe einer Textzeile ohne CR/LF. WRITELN text " " " mit CR/LF (wie ECHO). PWRITE text Druckt eine Textzeile ohne CR/LF. PWRITELN text " " " mit CR/LF (wie PECHO). STACK-BEFEHLE: ============== CLEAR L”scht Stack. + PUSH path\file Legt eine Datei auf dem Stack ab. In ERRORLEVEL wird die Anzahl der abgelegten Dateien zurck- geliefert. + POP L”scht die letzte Datei vom Stack. ERRORLEVEL enth„llt die Anzahl der verbleibenden Elemente. + STACK? Gibt die Anzahl der Stackelemente aus. + SDIR [path][file] Legt das Inhaltsverzeichnis auf dem Stack ab. Achtung: Es werden nur die Dateinamen (keine Pfade) abgelegt! In ERRORLEVEL wird die Anzahl der vorhandenen Stackelemente zurckgeliefert. + STREE [path][file] Wie TREE, legt die Dateien aber auf dem Stack ab. In ERRORLEVEL wird die Anzahl der vor- handenen Stackelemente zurckgeliefert. SLIST Gibt den Stackinhalt aus. + FILESELECT path Gibt eine Fileselect-Box aus. Die ausgew„hlte Datei wird auf dem Stack abgelegt. ERRORLEVEL enth„llt die Anzahl der vorhandenen Stack- elemente oder NULL, wenn keine Datei ausgew„hlt wurde. (Vorsicht! Nur benutzen, wenn SSL-CLI als "*.PRG" gestartet wurde.) SSAVE path\name Speichert Stackinhalt ab. * SLOAD path\name L„d den Stackinhalt zurck. Die Variable %L wird duch das letzte Stackelement ersetzt. Das letzte Stackelement wird dabei vom Stack gel”scht. Die Variable %E wird wie bei %L durch das letzte Stackelement ersetzt. Das letzte Element wird aber nicht gel”scht. Wird die Variable %A bei einem Befehl angegeben, so wird dieser mit dem gesamten Stackinhalt ausgefhrt. BATCH-BEFEHLE: ============== Die Variablen %1 bis %9 enthalten die neun, von bis zu 50, bergebenen Parameter einer Batchdatei. + SHIFT Eleminiert den ersten Parameter %1. Die brigen Parameter rcken dabei um eins nach vorne, d.h. Parameter 2 wird jetzt als %1 angesprochen, usw. Als ERRORLEVEL wird die Anzahl der noch vor- handenen Parameter zurckgeliefert. IF%x= "txt" lable Wenn Parameter "%x" (1<=x<=9) GLEICH "txt" ist, dann erfolgt ein Sprung zu "lable". IF%x# "txt" lable Wenn Parameter "%x" (1<=x<=9) UNGLEICH "txt" ist, dann erfolgt ein Sprung zu "lable". IF%1= "*.TXT" sprung Wichtig: Es wird keine Grož/Kleinschreibung bei "IF%x=" und "IF%x#" beachtet! SET%x "txt" Belegt den Parameter "%x" mit "txt". Der Text wird automatisch in Grožbuchstaben umgewandelt. X:>SET%1 "Hallo Welt" X:>ECHO %1 Hallo Welt X:> INPUT%x Belegt den Parameter "%x" mit einer einzugebenen Zeichenkette. Der eingegebene Text wird in Grož- buchstaben umgewandelt. X:>INPUT%1 Hallo Welt X:>ECHO %1 Hallo Welt X:> BEISPIEL-BATCHDATEIEN: ====================== SDIR *.TXT | Anzeige aller "*.TXT"-Dateien (I) :loop TYPE %L IFERR# 0 loop SDIR *.TXT | Anzeige aller "*.TXT"-Dateien (II) TYPE %A SDIR *.TXT | Anzeige aller "*.TXT"-Dateien und :loop | anschliežendes L”schen dieser TYPE %E DEL %L IFERR# 0 loop STREE *.BAK | L”schen aller "*.BAK"-Dateien incl. aller DEL %A | Unterverzeichnisse SET BINKLEY=E:\FIDO; | Setzt Environment BINKLEY und MAILER SET NEODESK=C:\NEODESK; PROGRAMM.TTP | ERRORLEVEL IFERR= 0 ok IFERR= 1 fehler ECHO Fataler Fehler! GOTO ende :fehler ECHO Es ist Fehler 1 aufgetreten! :ende @ECHO=OFF | Auswahlmen :start CLS ECHO 1- Textverabeitung ECHO 2- Zeichenprogramm ECHO ESC- ENDE :sprung GETKEY IFERR= 49 text IFERR= 50 zeichen IFERR= 27 ende GOTO sprung :text F: CHDIR \WORDPLUS WORDPLUS.PRG goto start :zeichen D: CHDIR \DEGAS DEGAS.PRG GOTO start :ende B E S O N D E R H E I T E N =============================== Die Wilfdcards (oder Joker) sprechen nicht ALLE Dateien auf einmal an! Es wird nur die zuerst gefundene Datei verarbeitet. Sollen z.B. alle Dateien im aktuellen Verzeichnis gel”scht werden, so ist dieses mit DEL *.* (siehe MS-DOS) nicht m”glich, sondern nur ber "SDIR *.*" und anschliežendem "DEL %A". " K O N W N - B U G S " und anderes Getier ============================= - SSL-CLI arbeitet bis jetzt nicht unter MiNT, da dieses keine VT-52 und schon gar keine AES/VDI-Aufrufe mag. - Der Bildschirminhalt wird vor dem Aufruf von GEM-Programmen nicht gerettet, d.h. es kann u.U. das Desktop des aufgerufenen Programms auch nach Beendigung noch auf dem Bildschirm zu sehen sein. K U R Z R E F E R E N Z ============================= *) Diese Befehle geben einen Fehlercode als ERRORLEVEL zurck (0=kein Fehler aufgetreten). +) Diese Befehle liefern einen Rckgabewert ber ERRORLEVEL zurck. Dieser kann z.B. ber ERR? angezeigt werden. path Kompletter Pfad MIT oder OHNE Laufwerksangabe. name Name der Datei OHNE Pfad und OHNE Wildcards. file Name der Datei OHNE Pfad, MIT oder OHNE Wildcards. x: Laufwerk. DISK-BEFEHLE: ============= * CHDIR/CD path\name Pfad „ndern. * MKDIR/MD path\name Ordner anlegen. * RMDIR/RM path\name Ordner l”schen. DIR [path][file] Inhaltsverzeichnis anzeigen. FILES [path][file] Erweitertes Inhaltsverzeichnis anzeigen. TREE [path][file] Rekursive Anzeige des Inhaltsverzeichnisses. * CHDRIVE x:/x: Laufwerk „ndern. + DFREE [x:] Ermittelt den noch freien Speicherplatz. * TOUCH path\file Setzt Datum/Uhrzeit. * DEL path\file L”scht eine Datei. * COPY path[\file] [path] Kopiert eine/mehrere Dateien. * MOVE path[\file\ [path] Verschiebt eine/mehrere Dateien. DRIVES? Zeigt alle vorhandenen Laufwerke an. STAT [x:] Gibt eine Laufwerksstatistik aus. DUMP path\file Ausgabe einer Datei als HEX-Dump. MAPPING [x:] Ausgabe einer graphischen Belegungstabelle. CHKDSK [x:] Untersucht die Partition x:. ERRORLEVEL-BEFEHLE: =================== IFERR= x lable Sprung, wenn letzte Fehlernummer GLEICH. IFERR> x lable " " " " GR™žER. IFERR< x lable " " " " KLEINER. IFERR# x lable " " " " UNGLEICH. IFERR>= x lable " " " " GR™žER oder GLEICH. IFERR<= x lable " " " " KLEINER oder GLEICH. ERR? Abfrage der ERRORLEVEL. + EXIST? path\file Abfrage, ob eine Datei vorhanden ist. + CLRERR Setzt ERRORLEVEL auf NULL. + SETERR x Setzt ERRORLEVEL auf den Wert x. STORE Speichert ERRORLEVEL im Zwischenspeicher. RECALL Holt ERRORLEVEL aus dem Zwischenspeicher. SYSTEM-BEFEHLE: =============== END Ende einer Batchdatei. VER Versionsnummer anzeigen. PAUSE Wartet auf Tastendruck. GOTO lable Sprung zur Marke "lable". :lable Definiert Sprungmarke "lable". HELP Anzeige einer Hilfsseite. EXIT SSL-CLI beenden. BREAK=ON Ctrl+C Unterbrechung ein. BREAK=OFF Ctrl+C Unterbrechung aus. BREAK? Abfrage des BREAK-Status. REM Bemerkungszeile + GEMDOS? Ausgabe der GEMDOS-Version. DATE Anzeigen/Setzen des Datums. TIME Anzeigen/Setzen der Uhrzeit. SET? Anzeige des aktuellen Environment. SET var=path; Erweitern des Environments um var=path. SET ; L”schen des Environments. I/O-BEFEHLE: ============ ECHO=ON Echo ein. ECHO=OFF Echo aus. ECHO? Abfrage des ECHO-Status. ECHO text Ausgabe von "text" auf dem Bildschirm. ECHO Ausgabe einer Leerzeile. PECHO text Ausgabe von "text" auf dem Drucker. PECHO Druckt eine Leerzeile. CLS Bildschirm l”schen. WRAP=ON Zeilenberlauf ein. WRAP=OFF Zeilenberlauf aus. WRAP? Abfrage des WRAP-Status. HARDOPY Druckt eine Hardcopy. * TYPE path\file Ausgabe einer Datei auf dem Bildschirm. * PRINT path\file Ausgabe einer Datei auf dem Drucker. + GETKEY Abfrage der Tastatur. WRITE text Ausgabe einer Textzeile ohne CR/LF. WRITELN text " " " mit CR/LF (wie ECHO). PWRITE text Druckt eine Textzeile ohne CR/LF. PWRITELN text " " " mit CR/LF (wie PECHO). STACK-BEFEHLE: ============== CLEAR L”scht Stack. + PUSH path\file Legt eine Datei auf dem Stack ab. + POP L”scht die letzte Datei vom Stack. + STACK? Gibt die Anzahl der Stackelemente aus. + SDIR [path][file] Legt das Inhaltsverzeichnis auf den Stack. + STREE [path][file] Wie TREE, aber mit Pfaden und Unterordnern. SLIST Gibt den Stackinhalt aus. + FILESELECT path Einlesen ber Fileselect-Box. SSAVE path\name Speichert Stackinhalt ab. * SLOAD path\name L„d Stackinhalt zurck. Die Variable %L wird duch das letzte Stackelement ersetzt. Das letzte Stackelement wird dabei vom Stack gel”scht. Die Variable %E wird wie bei %L durch das letzte Stackelement ersetzt. Das letzte Element wird aber nicht gel”scht. Wird die Variable %A bei einem Befehl angegeben, so wird dieser mit dem gesamten Stackinhalt ausgefhrt. BATCH-BEFEHLE: ============== Die Variablen %1 bis %9 enthalten die neun, von bis zu 50, bergebenen Parameter einer Batchdatei. + SHIFT Eleminiert den ersten Parameter %1. IF%x= "txt" lable Sprung, wenn Parameter "%x" GLEICH "txt". IF%x# "txt" lable " " " " UNGLEICH "txt". SET%x "txt" Belegt den Parameter "%x" mit "txt". INPUT%x Direkte Eingabe des Parameters "%x". HISTORIE ============== V0.xx - Testversionen. V1.00 - erste funktionsf„hige Version. V1.10 - STACK-Erweiterungen, AUTOEXEC.BAT, COPY, MOVE, rekursive Filesuche, Batch-Parameter, diverse Fehler beseitigt. V1.20 - IF%x=/IF%x#, DIR-Ausgabe ge„ndert, SET%x. V1.25 - diverse Optimierungen, STAT, DUMP, CHKDSK, MAPPING. V1.30 - weitere Optimierungen, INPUT%x, Handbuch berarbeitet. V1.40 - STORE, RECALL, SSAVE, SLOAD. V1.41 - Doppelter Cursor entfernt. ========================================================================== * * * W I D M U N G * * * ========================================================================== Dieses Programm ist meiner lieben Freundin SONJA gewidmet. ==========================================================================